使用 OCI WAF 配置和保护 Oracle Integration(流程)定制端点

您所在的位置:网站首页 openssl 证书 使用 OCI WAF 配置和保护 Oracle Integration(流程)定制端点

使用 OCI WAF 配置和保护 Oracle Integration(流程)定制端点

#使用 OCI WAF 配置和保护 Oracle Integration(流程)定制端点| 来源: 网络整理| 查看: 265

注:

此教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure Free Tier 。 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室时,请将这些值替换为特定于云环境的那些值。 使用 OCI WAF 配置和保护 Oracle Integration(流程)定制端点 简介

Oracle Integration 是一个完全托管的预配置环境,让您能够集成云和内部部署应用,实现业务流程自动化,深入了解业务流程,开发可视化应用,使用符合 SFTP 的文件服务器存储和检索文件,以及与 B2B 贸易合作伙伴交换业务文档。

使用 Oracle Cloud Infrastructure Web Application Firewall (OCI WAF) 保护应用程序免受恶意和不需要的互联网流量的影响。WAF 可以保护任何面向互联网的端点,并在客户应用中提供一致的规则实施。

目标

使用 OCI 防火墙配置和保护具有定制端点的 Oracle Integration 实例,以防来自 Internet 的恶意流量。

本教程将遵循文档建议的 Oracle Integration 参考体系结构建议来使用 WAF 和允许列表。

有关详细信息,请参阅: Provisioning and Administering Oracle Integration Generation 2 。

先决条件 访问 Oracle Cloud 租户 您的租户中的 Oracle Integration 实例设置 您的租户中具有公共子网的 VCN 具有 DNS 域的 CNAME 的定制端点 SSL 证书 用于保护 Oracle Integration 实例定制端点的 OCI WAF 策略 任务 1:创建 Oracle Integration 实例

要通过 Web 控制台创建新的 Oracle Integration 实例,请转至开发人员服务菜单,然后单击集成。

在“集成实例”屏幕上,选择将在其中创建实例的区间,然后单击创建实例。

此时将显示用于创建实例的屏幕。填写实例名称,选择 Oracle Integration 版本(第 2 代),然后单击创建。

注:可以根据环境的需求配置其他项。在本教程中,我们将保留默认值。

创建完成后,实例将可用。单击实例名称可查看详细信息。

要验证 Oracle Integration 实例的功能,请在访问实例的详细信息后,单击服务控制台。

此时将打开新的浏览器选项卡,您可以访问 Oracle Integration 主屏幕。

任务 2:设置 OCI Vault、DNS 和 SSL 证书

创建 Oracle Integration 实例后,为实例创建定制端点。通过定制端点,您可以使用专用域访问 Oracle Integration 接口,例如:

https://oic-lab..com/ic/home

要创建定制端点,请执行以下 5 个步骤:

创建具有公共子网的 VCN 在指向 Oracle Integration 端点的定制 DNS 中创建 CNAME 条目 为新链接创建 SSL 证书(例如 oic..com) 创建将存储证书的 OCI Vault 在 Oracle Integration 实例上执行定制端点配置 任务 2.1:在区间中创建 VCN 和公共子网

要创建 VCN,请打开 OCI Web 控制台的服务菜单,然后单击虚拟云网络。

在“网络”页中,检查您是否在正确的区间中,然后单击启动 VCN 向导。

根据您构建的环境要求创建 VCN。Oracle Integration 要求创建公共子网和服务网关可用(NAT 网关)。

VCN 将在创建 Oracle Integration 定制端点期间使用。

重要提示:请记下 VCN 的 OCID,因为它将用于 Oracle Integration 上的 WAF 配置。

任务 2.2:在定制 DNS 中为 Oracle Integration 端点创建 CNAME 条目

现在,您必须访问域的 DNS 配置环境才能创建指向 Oracle Integration 的 CNAME 条目。在配置 WAF 时,将更改此 CNAME 条目,但此时必须创建该条目,以便我们可以导入在访问 Oracle Integration 时用于加密的 SSL 证书。

返回到 OCI 控制台中的 Oracle Integration 服务页。

在实例详细信息中,请注意 OCI 提供的用于访问 Oracle Integration 实例的服务控制台的域 FQDN。

在本示例中,我们将使用 FQDN oic-lab-instance-axyjvqi24eaa-gr.integration.ocp.oraclecloud.com。

在域中创建指向 Oracle Integration 定制端点的 FQDN 的 CNAME。

注:本教程中未介绍如何在 DNS 区域文件中配置 CNAME。

拥有 FQDN 后,配置您自己的域的 CNAME。配置后,使用命令 dig 验证是否正确配置了 CNAME。

$ dig ..com

任务 2.3:为新域创建 SSL 证书

创建 CNAME 后,必须创建 SSL 证书才能为实例启用加密的互联网流量。在本教程中,我们将创建自签名 SSL 证书。但是,在生产环境中,证书必须有效。

要创建自签名证书,我们先创建一个私钥。

$ openssl genrsa -out oic-lab.key 2048

因此,您将获得名为 oic-lab.key 的私钥。

现在,让我们创建 CSR(证书签名请求)。

$ openssl req -key oic-lab.key -new -out oic-lab.csr

请填写要求提供的信息,以便最终获取 .csr 文件。请注意,“Common Name(公用名称)”必须准确地说是教程中使用的 FQDN。

现在我们有私钥 (oic-lab.key) 和 csr(oic-lab.csr),让我们创建自签名 SSL 证书。为此,请运行以下命令。

$ openssl x509 -signkey oic-lab.key -in oic-lab.csr -req -days 365 -out oic-lab.crt

此命令将生成一个自签名证书,有效期为 365 天。

现在我们有自签名证书,我们可以将其导入到 OCI Vault 中供 Oracle Integration 使用。

任务 2.4:创建 OCI Vault 并导入 SSL 证书

现在我们已经有了自签名 SSL 证书,必须在运行 Oracle Integration 的区间内创建 OCI Vault。

要创建 OCI Vault,请访问 OCI Web 控制台中的服务菜单。

加载 Vault 屏幕后,检查是否位于正确的区间中,然后单击 Create Vault 。

填写有关正确创建 Vault 的信息,然后单击创建 Vault 。

创建 Vault 之后,创建主加密密钥。

创建将包含自签名证书的 Vault 密钥之前,需要调整要存储在 Vault 中的证书的格式。此适用性只是证书、密钥、中间证书(如果有)和证书密码短语(如果有)的串联。最终文件格式将采用 JSON 格式,如下面的模型所示:

``` { "key": "-----BEGIN PRIVATE KEY-----\n…..-----END PRIVATE KEY-----\n", "cert": "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n", "intermediates": [ "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n" ], "passphrase": "" } ``` 要使用一组证书和密钥来获取此格式,需要进行一些处理,因为如您所见,密钥或证书或密码短语中不应有换行符。

使用下面的命令调整密钥。

`awk -v RS= '{gsub(/\n+/, "\\n")}1' `

复制此值并将其插入上面的示例 JSON 的“键”项中。使用文件 crt 重复该过程。

返回到 OCI Web 控制台并单击 OCI Vault 的安全菜单,然后单击创建密钥。

正确填写字段,并在秘密内容字段中插入在上述步骤中创建的 JSON。

填写密钥创建表单所需的信息,选择主加密密钥并将您的 JSON 密钥粘贴到秘密内容字段中。创建密钥后,让我们创建 Oracle Integration 定制端点。 任务 2.5:为 Oracle Integration 实例配置定制端点

要配置 Oracle Integration 定制端点,请返回 OCI Web 控制台中的“集成”页并访问您的实例。

单击编辑。

在 Oracle Integration 设置编辑页中,单击显示高级设置以查看定制端点配置项。

要继续配置,请输入定制端点的名称并选择包含存储在 Vault 中的 SSL 证书的密钥。最后,单击保存更改。

您的 Oracle Integration 实例将更改为 UPDATING 状态。等待它再次变为活动状态。

实例恢复 ACTIVE 状态后,单击服务控制台以测试对新定制端点的访问。

如果已正确配置了所有内容,服务控制台将使用您在 DNS CNAME 中配置的 FQDN(任务 2.2 的步骤 2)打开。

如本教程所示,我们使用的是自签名 SSL 证书,因此浏览器会发出一条警报,指出无法验证证书。但是,请注意,您的定制端点的 FQDN 已在使用中。

访问后,应显示 Oracle Integration 控制台,这表示您的定制端点正常工作。

注:如果使用有效的 SSL 证书,则不会发出有关证书有效性的浏览器警告消息。

任务 3:配置 WAF 和 Oracle Integration AllowList

现在,我们已启动并运行自定义端点,让我们配置 WAF 规则和 Oracle Integration 允许列表以保护访问免受第 7 层攻击。

在创建和配置 OCI WAF 以保护 Oracle Integration 免受外部攻击之前,让我们先配置 Oracle Integration 允许列表来限制哪些源 IP 地址可以访问我们刚才创建的定制端点。其理念是只有 WAF OCI CIDR 有访问权限。这样,我们将能够限制对 Oracle Integration 实例的外部访问,从而仅通过 WAF 隧道所有外部访问。

要正确创建允许列表,首先需要获取 WAF OCI 在我们配置 Oracle Integration 的区域中使用的服务 CIDR。

任务 3.1:查找 OCI 区域的 CIDR

可从以下位置获取此 CIDR:https://docs.oracle.com/en-us/iaas/tools/public_ip_ranges.json 。此 JSON 文件包含 Internet 上可用的所有 OCI 服务的 CIDR。

要查找 WAF CIDR,请首先在上面的 URL 的 JSON 文件中搜索标识区域的字符串。在使用圣保罗区域时,引用字符串为 sa-saopaulo-1 。

如果您使用的是其他区域,请访问以下 URL 以标识标识要部署 Oracle Integration 的位置的字符串:区域和可用性域

任务 3.2:查找您所在地区的 WAF CIDR

现在,您已了解 OCI 服务公共范围的位置以及用于实例化 OCI 资源的区域字符串的位置,要查找 WAF CIDR,您需要 OCI 中 WAF 服务 IP 范围的完整列表。

包含 OCI 中 WAF 服务的公共 CIDR 的 URL 如下所示:边缘策略入门。

转至 Step 6。保护 WAF 并扩展 CIDR 范围。

您可以在其中找到 OCI WAF 服务的所有可用地址。现在,对于您在上面的任务 3.1 中提出的所在区域的 IP,搜索相应的 WAF 范围,方法是搜索 "OSN"(Oracle 服务网络)条目。

本教程使用圣保罗区域 IP。

请注意您找到的地址,以便我们现在可以在 Oracle Integration 允许列表中包含这些记录。

任务 3.3:在 Oracle Integration 中配置 AllowList

现在我们有 WAF OCI 公共地址,让我们在 Oracle Integration 中创建允许列表。为此,请返回到您的实例屏幕,单击网络访问菜单,然后单击编辑。

使用之前步骤中获得的 CIDR 以及任务 2.2.1 中创建的 VCN 的 OCID 填写信息。

配置允许列表后,只有 WAF CIDR 才能直接访问控制台。所有其他通过互联网接入必须通过 WAF。

要验证这一点,请尝试访问 Oracle Integration Service Console。如果一切配置正确,您将在浏览器中收到 403 Forbidden 消息。

让我们将 WAF 配置为允许监视和保护此访问。

任务 3.4:配置 OCI WAF 边缘规则

最初,我们还需要在 WAF 中创建 SSL 证书记录,用于为 Oracle Integration 控制台提供安全的 HTTPS 访问。

从 OCI Web 控制台菜单中,单击边缘策略资源。

在服务页上,单击创建证书。

将打开用于配置数字证书的页面。填写请求的信息并上载上面的步骤 2.2.3 中创建的 .crt 和 .key 文件。

注:选择自签名证书选项,因为我们创建的 SSL 证书是自签名的。如果要使用有效证书,必须取消选中此选项。

创建证书后,返回到“Web 应用程序防火墙”菜单以创建将保护已配置的 Oracle Integration 端点的 WAF 策略。要执行此操作,请在策略菜单中单击创建 WAF 策略。

单击链接可创建“旧工作流”规则。

此时将打开一个新菜单,您必须正确填写请求的信息。

其中:

名称:填写策略的名称。 WAF 策略区间:选择将在其中创建策略的区间。 主域:您在 DNS 中创建的实例的 FQDN。 源名称:用于标识 WAF 将发送外部用户访问的 URL 的名称。 URI:Oracle Integration 实例的 FQDN(与上面的步骤 2.2.2 中 CNAME 中配置的 FQDN 相同)。 填充项后,单击创建边缘策略。此时将显示一个新屏幕,其中包含策略的详细信息。等待策略状态为“ACTIVE”。

现在,要完成,我们需要执行 WAF 保护规则配置,还需要将 DNS CNAME 重新配置为属于 WAF 基础结构的 FQDN。

任务 3.5:配置 OCI WAF 保护规则

创建边缘策略后,您需要设置一些参数以保护通过 WAF 访问 Oracle Integration 实例。要执行此操作,请在 WAF 策略中单击设置菜单,然后单击常规设置选项卡上的编辑。

选择启用 HTTPS 支持选项,然后选择在步骤 3.3 中创建的证书。单击保存更改。

将 WAF 配置为使用 SSL 证书后,您可以配置“访问控制”策略和“保护规则”。这些规则将提供必要的安全性,以便保护对 Oracle Integration 控制台的访问。WAF OCI 具有预先确定的规则,最初可在配置中使用这些规则,还可以根据业务需求定制规则。定制 WAF 规则不在此过程范围内。

创建访问控制

要配置访问控制,请单击访问控制菜单,然后单击添加访问规则。

在 "Access Control" 配置屏幕中,正确填写项目并单击添加访问规则。请注意,在本教程中,我们将创建一个规则,仅允许从来自巴西的 IP 地址访问 Oracle Integration 控制台页。

创建保护规则

要执行配置,请单击保护规则菜单,然后单击规则选项卡,然后启用所需的策略。单击每个规则的服务菜单并将其置于块中。

根据需要选择多个规则。在本教程中,我们将仅为演示目的启用跨站点脚本 (Cross-Site Scripting,XSS) 规则。

启用 WAF 保护规则后,单击未发布的更改菜单,然后单击全部发布。

应用 WAF 规则大约需要 10-15 分钟。

任务 3.6:将 CNAME 设置为 WAF 的 FQDN

配置 WAF 的“保护规则”后,您可以更改专用域的 CNAME,以便向其发送的所有请求都转发到 WAF,不再转发到 Oracle Integration 的自定义端点。

为此,请转至 WAF 策略页并复制必须在 DNS 中配置的 CNAME 地址。

复制此地址并更改区域内的 DNS。更改 DNS 后,运行下面的命令以验证配置是否正确。

$ dig ..com

任务 3.7:配置 Oracle Integration 应用程序角色

在通过 WAF 测试对 Oracle Integration 的访问权限之前,最后一步是更改 Oracle Integration 的应用程序角色以正确向用户授予访问权限。如果不这样做,用户将无法访问 Oracle Integration 控制台。

在 OCI Web 控制台中,单击域并访问身份域配置。

注:如果尚未设置定制身份域,则将使用名为 default 的域。在本教程中,我们使用的是默认域。

在 "Domains"(域)页面中,单击 default 。

在默认域页中,单击“Oracle Cloud Services”菜单,然后单击 ICO 实例的链接:

在实例的配置页中,单击应用程序角色菜单以查看 Oracle Integration 应用程序中的现有角色。在每个角色中,可以分配用户或用户组,从而允许对 Oracle Integration 环境的权限配置文件进行详细管理。

任务 4:测试和验证

在应用完 WAF 策略并配置域的 CNAME 以指向 WAF 的 FQDN 之后,您最终可以测试所有功能是否正常运行。

通过域的 FQDN 访问端点 URL。应显示 Oracle Integration 控制台页。

要验证 WAF 执行的过滤,请访问策略配置页,然后单击日志菜单。

要验证 WAF 的运行,我们可以在浏览器中通过 URL 测试简单的 XSS 攻击。

https://..com/ic/home/?default=alert(document.cookie)

最后,访问 WAF 日志并查看因 XSS 攻击而阻止未经授权访问的记录。

现在,您在 Internet 上提供了 Oracle Integration 环境,并受 OCI WAF 保护。

相关链接

在使用此材料之前,我们建议阅读参考链接和官方文档来管理 Oracle 云环境。

OCI 集成实例

OCI VCN

OCI WAF

OCI 边缘策略

OCI Vault

OCI 区域

为实例配置定制端点

OCI 服务网络 CIDR

确认

作者 - Rodrigo Pace de Barros(Oracle LAD A-Team 云安全解决方案工程师)

更多学习资源

探索 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 频道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心。

标题和版权信息

Configure and protect an Oracle Integration (Process) custom endpoint with OCI WAF

F80991-01

May 2023

Copyright © 2023, Oracle and/or its affiliates.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3